package top100

// 位置上的数字不同。那么根据异或的性质，同出0，异出1， 只需要统计 x ^ y 后 1的个数
// x & (x - 1) 恰好可以去掉 位数上的 一个1用于统计1的个数
func hammingDistance(x int, y int) int {
	num := x ^ y
	count := 0
	for num > 0 {
		num &= num - 1
		count += 1
	}
	return count
}


